"""
面向对象类中的成员方法的定义和使用
"""


# 设计一个类
class Student:
    name = None  # 学生姓名 类变量

    # 定义一个成员方法/实例方法
    def say_hi1(self):
        print(f"大家好，我是{self.name},请大家多多关照！")

    def say_hi2(self, msg):
        print(f"大家好，我是{self.name},{msg}")

    @classmethod
    def cm(cls):
        print("我是类方法，因为我被classmethod修饰")

    @staticmethod
    def sm():
        print("我是静态方法，因为我被staticmethod修饰")


# 构建对象
stu1 = Student()

# 设置对象属性和调用对象的成名方法
stu1.name = "周杰轮"
stu1.say_hi1()
stu1.say_hi2("哎哟不错呦")
stu2 = Student()
stu2.name = "张学油"
stu2.say_hi1()
stu2.say_hi2("她来听我的演唱会")

print("----------类方法的使用：类.类方法-----------------")
Student.cm()

print("----------类方法的使用：类.静态方法-----------------")
Student.sm()
